深度学习在股票市场中的应用综述

本文是对2020年的一篇综述论文总结:Applications of deep learning in stock market prediction: recent progress

随着深度学习技术的快速发展,越来越多的人希望通过这项新的技术来解决经典的难题:股价预测问题,本篇综述简要介绍了股票预测问题的发展时间轴,重点介绍了近三年的最新研究成果,不仅介绍了数据源类型、神经网络结构的变体、通用评估指标等内容,还介绍了各种实现的版本。
本篇文章的贡献主要在以下几个方面:
1、总结了深度学习技术在股票市场预测领域的最新进展,特别是近三年的进展。
2、总结了股票市场预测的一般工作流程
3、更加关注实现和复现部分
4、给出一些未来可能的发展方向

关于元数据

问题归类:

隔日分类(52/124),隔日回归(54/124),日内分类(8/124),日内回归(11/124)

论文所在地

国家top5:美国、中国、香港、日本、韩国

可用数据类型:

1、市场数据:股票市场产生的数据,例如开盘价、收盘价、成交额、成交量等等
2、文本数据:社交媒体、新闻、微博等互联网产品产生的数据,可以用于分析市场情绪
3、宏观数据:经济周期的收据、CPI、GDP数据等等
4、知识图谱数据:不同的市场、不同的公司是否具有相关性的数据
5、图像数据:受到卷积神经网络在图像分类和目标检测应用上的启发,蜡烛图、卫星图、央视图像和视频文件等等都可以用来监控公司的情况
6、基本面数据:季报、资产负债表、市盈率、市净率等数据
7、研报数据:投研机构出具的研究报告

数据选取的时间段:

1、时间维度太短的数据没有足够的说服力且容易造成过拟合导致预测分析不准确。
2、时间维度太长的数据容易面临市场风格变换导致预测分析不准确的问题。

关于数据处理

一般会遇到的问题有缺失值的处理、异常值噪声的排除。

特征抽取:

关于股票价格的特征,大致可以分为以下几类:
1、对机器学习模型来说,常常需要通过人工特征工程方法去构建特征,例如技术分析的MA,MACD等等指标就是一类特征:,还有根据技术指标和时间段来构建二维图形作为特征。
2、通过自然语言处理的方法提取文本特征来分析新闻等公共事件,如word2vec、Global Vectors for Word Representation等词嵌入方法。
3、情绪特征:通过文本数据分析市场情绪,Stock2Vec嵌入模型、LIWC等商业软件。
4、近年来,也有研究者通过知识图谱来分析个股之间的关系,例如TransE模型等等。

降维:

我们构建的特征往往维度很高,而且大多都是通过基本的价格数据构建出的特征,因此特征之间很大一部分的相关性会比较强,为了避免深度学习的过拟合问题我们需要对维度进行压缩,
经典的降维方法有PCA及其变种、ICA方法、autoencoder、EMD、SMC等等
对特征进行选择也是一类降维方法,Chi-square method(卡方检验)、maximum relevance and minimum redundancy是两类经典的特征选择方法。

特征正则化和标准化

即把数据压缩到-1到1和0到1之间

数据片段的选取

分为滚动窗口选取和连续数据选取

数据增强

股票的数据不像图像数据那样难以获取,因此关于数据增强的研究相对较少,但仍然有一些研究,例如ModAugNet

预测模型

大部分的股票预测模型都是监督学习的,当然还有一些关于半监督学习、生成式对抗网络、迁移学习、强化学习等等。

网络模型

经典的机器学习算法有:LR、ARIMA、SVM、KNN等等
神经网络模型在股票领域的应用可分为3类:
FFNN前馈神经网络类:ANN、DNN及其变种
CNN卷积神经网络类:CNN、FCN等
RNN循环神经网络类:RNN、GRU、LSTM、Bi-LSTM等

技术指标策略通常会被用来作为baseline model,例如基于MACD、RSI、SMA的动量策略

使用stacked models方法和注意力机制通常可以提升模型的准确率

把融合模型分为深度学习+传统机器学习、深度学习+深度学习

关于模型评估

分类模型指标:accuracy、precision、recall、sensitycity、specificity、F1 score、马修斯相关系数、AUC等等

回归模型指标:MAE、RMAE、MSE、RMSE、MAPE、$R^2$

收益分析指标:收益率、最大回测、夏普比率等等

关于实现

就模型实现的语言框架来说,主要有TensorFlow、PyTorch、Keras等等,Python占了很大一部分
同时作者也从程序可复现性、数据可获取性、代码可获取性等方面进行了描述

关于未来的方向

1、创造新的模型可以从几个方面去研究:神经网络结构的变化、引入新的机制如注意力机制、生成式对抗网络等等还有很大的空间待挖掘,
2、扩展性的数据源,数据的丰富性也可以提升模型的准确性
3、跨市场分析,由于交易规则的不同,大多研究往往只研究单一的市场,但是跨市场的数据是否能够迁移使用、模型是否可复用等等问题也是一个研究方向
4、算法交易:我们目前的研究主要集中在预测并使用预测结果做简单规则的交易,但是这并非全部,如何根据预测结果做出更加智能的交易策略也是一个研究方向,这个场景是一个强化学习的发挥场景。